package org.suwenqian.airoleplayingchatbackend.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import org.suwenqian.airoleplayingchatbackend.dao.dto.req.RoleInsertReqDTO;
import org.suwenqian.airoleplayingchatbackend.dao.dto.req.RoleListReqDTO;
import org.suwenqian.airoleplayingchatbackend.dao.dto.resp.RoleListRespDTO;
import org.suwenqian.airoleplayingchatbackend.dao.entity.RoleDO;

public interface RoleService extends IService<RoleDO> {

    /**
     * 用户新增或者更新角色设定
     * @param requestParm 请求参数
     */
    void addOrUpdateRole(RoleInsertReqDTO requestParm);

    /**
     * 用户删除角色
     * @param id 角色id
     */
    void deleteRole(String id);

    /**
     * 查询角色列表
     * @param requestParm 用户id
     * @return 角色列表
     */
    IPage<RoleListRespDTO> queryRoleList(RoleListReqDTO requestParm);

    /**
     * 搜索角色列表
     * @param requestParm 用户搜索关键词
     * @return 角色列表
     */
    IPage<RoleListRespDTO> searchRoleList(String requestParm);
}
